package MyIOTest;

import java.io.*;

public class test1 {
    //需求：拷贝文件夹（包括子文件夹）
    public static void main(String[] args) throws IOException {
        //创建数据源
        File src=new File("D:\\javacode\\test");
        //创建目的地
        File dest=new File("D:\\javacode\\dest");

        //调用方法
        copydir(src,dest);
    }

    private static void copydir(File src, File dest) throws IOException {
        //创建目的地文件夹
        dest.mkdir();
        //递归
        //进入文件夹
        File[] files = src.listFiles();
        //遍历数组
        for (File file : files) {
            if(file.isFile()){
                FileInputStream fis=new FileInputStream(file);
                FileOutputStream fos=new FileOutputStream(new File(dest,file.getName()));
                int len=0;
                byte[] bytes=new byte[1024];
                while ((len=fis.read(bytes))!=-1) {
                    fos.write(bytes,0,len);
                }
                fos.close();
                fis.close();
            }
            else{
                //判断文件夹
                copydir(file,new File(dest,file.getName()));
            }
        }


    }


}
